package HomeWork;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/*4.把任意字符串加密显示
 *  YUANzhi1987
 *  加密后为
 *  zvbo9441987
 *  加密规则:
 *   1.如果是大写字母变成小写字母,往后移动一位
 *   2.小写字母通过收集输入发对应键盘来进行加密
 *   1-1
 *   abc-2
 *   def-3
 *   ghi-4
 *   jkl-5
 *   mno-6
 *   pqrs-7
 *   tuv-8
 *   wxyz-9
 *   0-0
 *   3.数字不变*/
public class work04 {
    public static void main(String[] args) {
        String jiami = jiami("YUANzhi1987");
        System.out.println(jiami);
    }

    public static String jiami(String str) {
        List<String> list = Stream.of(str.split("")).map(s -> s.replaceAll("[abc]", "2"))
                .map(s -> s.replaceAll("[def]", "3")).map(s -> s.replaceAll("[ghi]", "4"))
                .map(s -> s.replaceAll("[jkl]", "5")).map(s -> s.replaceAll("[mno]", "6"))
                .map(s -> s.replaceAll("[pqrs]", "7")).map(s -> s.replaceAll("[tuv]", "8"))
                .map(s -> s.replaceAll("[wxyz]", "9")).map(s -> s.replaceAll("Z", "a"))
                .map(s -> s.replaceAll("[A-Y]", (char) (s.charAt(0) + 33) + "")).
                        collect(Collectors.toList());
        String str2=String.join("", list);
        return str2;
    }

}
